package demo3;

public enum Season {
    // 枚举项的用法比较特殊:枚举("“);
    SPRING("春") {
        // 如果枚举类中有抽象方法,那么在枚举项中必须要全部重写
        @Override
        public void show() {
            System.out.println(this.name);
        }
    },
    SUMMER("夏") {
        @Override
        public void show() {
            System.out.println(this.name);
        }
    },
    AUTUMN("秋") {
        @Override
        public void show() {
            System.out.println(this.name);
        }
    },
    WINTER("冬") {
        @Override
        public void show() {
            System.out.println(this.name);
        }
    };

    // 4.枚举也是一个类，也可以去定义成员变量
    public String name;

    // 6.枚举类可以有构造器，但必须是private的，它默认的也是private的。
    // 空参构造
    /*private Season() {
    }*/

    // 有参构造
    private Season(String name) {
        this.name = name;
    }

    // 抽象方法,在枚举项中必须要全部该重写
    public abstract void show();

}
